home *** CD-ROM | disk | FTP | other *** search
/ Chip 1997 March / CHIP Mart 1997.iso / prg / DOSLONG / DOSLFNBK.TXT < prev    next >
Text File  |  1996-04-13  |  27KB  |  553 lines

  1. DOSLFNBK v 1.2 - Backs up/restores Win95 long filenames in DOS
  2.  
  3. Copyright (c) 1995,1996 D.J. Murdoch.
  4.  
  5. 0. Contents of this file
  6.  
  7.    1. Syntax
  8.    2. Description
  9.    3. Details
  10.    4. Memory Limitations
  11.    5. Safety
  12.    6. Recovery from Total Disk Failure
  13.    7. License
  14.    8. Release History
  15.    9. Acknowledgments
  16.  
  17. 1. Syntax:
  18.  
  19.       DOSLFNBK drive:directory [options]
  20.  
  21.         will back up all the long filename records in the named
  22.         directory and subdirectories of it to a file called
  23.         BACKUP.LFN.
  24.  
  25.       Options:
  26.         /f filename  Back up to this file instead (default .LFN
  27.                      extension)
  28.         /force       Force DOSLFNBK to go ahead without asking questions,
  29.                      even when it may be unsafe
  30.         /nr          No recursive:  don't do subdirectories
  31.         /nt          Don't restore times from LFN backup
  32.         /p           Prompt before each filename restore (ignored
  33.                      during saves)
  34.         /r           Restore from existing backup
  35.         /s directory Skip directory
  36.         /v           Give running status report
  37.         /d filename  Write a detailed debugging log to filename
  38.  
  39.       Examples:
  40.  
  41.         For recovery from a total disk failure, see section 6 below.
  42.  
  43.         To back up every long filename on the disk into BACKUP.LFN:
  44.  
  45.            doslfnbk c:\
  46.  
  47.         To restore just the Windows directory and subdirectories:
  48.  
  49.            lock c:
  50.            doslfnbk c:\windows /r
  51.            unlock c:
  52.  
  53.         To restore just the root directory, but no subdirectories:
  54.  
  55.            lock c:
  56.            doslfnbk c:\ /r /nr
  57.            unlock c:
  58.  
  59.         To backup everything except the MS Internet Explorer cache and
  60.         history directories:
  61.  
  62.    lock c:
  63.    doslfnbk c:\ /s \progra~1\micros~1\cache /s \progra~1\micros~1\history
  64.  
  65.         The following is not allowed; you need a full path:
  66.  
  67.            doslfnbk .  <---- Error!
  68.  
  69.         To restore the "Program Files" directory name and its
  70.         subdirectories, you need two runs:
  71.  
  72.            lock c:
  73.            doslfnbk c:\PROGRA~1 /r
  74.            doslfnbk c:\ /r /p /nr
  75.            unlock c:
  76.  
  77.         On the second run, you'll be prompted for each name to restore;
  78.         just say yes when you see "Program Files".
  79.  
  80. 2. Description:
  81.  
  82.         Microsoft's Windows 95 introduces long filenames (LFNs), and
  83.         they are mostly compatible with old software.  However, there
  84.         are some problems.  Old backup programs don't recognize LFNs, so
  85.         they don't get properly backed up.  Worse, the Win95 backup
  86.         program doesn't support a lot of common backup hardware (e.g.
  87.         Colorado Memory Systems tape drives using accelerator cards) and
  88.         won't run in DOS mode, so recovery from a catastrophic disk
  89.         failure can be really difficult.
  90.  
  91.         To address this problem, Microsoft put a program called LFNBK on
  92.         the Win95 CD ROM to back up your LFNs.  However, it's very
  93.         inconvenient to use.  It requires changes to your Control Panel
  94.         settings before and after use, and it works by stripping all the
  95.         LFNs off your disk --- so you need to restore them again after
  96.         you've done your backup to tape.  It will only run after Win95
  97.         has booted, so again you've got big problems after a
  98.         catastrophic disk failure.  If you've got a program that is
  99.         completely incompatible with LFNs then you might want to use
  100.         LFNBK, but for routine system backups it's too much of a pain.
  101.  
  102.         I wrote DOSLFNBK to address these problems.  It runs in any
  103.         version of DOS that can see your disk, and can both backup and
  104.         restore your files there.  During backup, it makes no changes to
  105.         the names, so you can routinely run it just before a tape backup
  106.         and not have to undo the damage afterwards.  It also allows
  107.         partial backups and partial restores; I'm pretty sure LFNBK is
  108.         an all-or-nothing affair.
  109.  
  110.         The downside of DOSLFNBK is that it has to work on the disk
  111.         below the file system level.  This means that if other programs
  112.         are running simultaneously, it can get confused, and may cause
  113.         errors in the backup or even errors on the disk itself.  I
  114.         recommend running it only in a single-tasking DOS session,
  115.         unless you're quite sure no other program is writing to the
  116.         disk.
  117.  
  118. 3. Details:
  119.  
  120.         Contents of this section:
  121.           - what DOSLFNBK does
  122.           - how to specify which directory to back up
  123.           - existing long filenames
  124.           - date information
  125.           - changed files
  126.           - file attributes
  127.           - the /v verbose option and the /d debug option
  128.           - running in Windows
  129.           - the /force option to ignore warnings
  130.           - the /s option to skip directories
  131.           - large directories
  132.           - the LOCK and UNLOCK commands
  133.           - DOSLFNBK, disk defragmenters and directory sort utilities
  134.           - DOSLFNBK and XCOPY
  135.           - exit codes
  136.  
  137.         When doing a backup, DOSLFNBK reads the directories on the disk
  138.         and writes copies of all of the LFN records to the binary
  139.         BACKUP.LFN file (or whatever file you specify with /f).  If you
  140.         use the /nr option, it will work only on the specified
  141.         directory; otherwise, it saves those entries as well as
  142.         everything in any subdirectory below it.
  143.  
  144.         You *must* give the drive letter and a full path to the
  145.         directory to back up; relative directory specifications are not
  146.         supported. Note that the directory name itself won't be backed
  147.         up or restored; only the files and subdirectories within it.
  148.         There is no way to specify a subset of the files; you have to
  149.         use the /p prompting option if you want this.
  150.  
  151.         The original drive letter is not stored in BACKUP.LFN, so you
  152.         can use DOSLFNBK to save the long filenames on one drive, use a
  153.         DOS utility to move them to another drive, and then restore the
  154.         filenames there.
  155.  
  156.         DOSLFNBK will normally not overwrite an existing LFN with a
  157.         different one; you should rename the file to its 8.3 alias
  158.         before running if you want to restore an old name, or run with
  159.         the /p option for individual prompting.
  160.  
  161.         Normally, DOSLFNBK will restore the backed up date information,
  162.         since older DOS versions and DOS utilities probably don't save
  163.         this properly.  You can override this behaviour by using the /nt
  164.         switch.
  165.  
  166.         If during a restore, DOSLFNBK detects that the file size has
  167.         changed, you'll be prompted as to whether you want to restore
  168.         the LFN or not.  If you choose to restore it, the date
  169.         information will *not* be restored, as it is probably incorrect.
  170.  
  171.         During a restore, the file attributes of the file on the disk
  172.         will be kept.
  173.  
  174.         To show you the progress of a run, DOSLFNBK prints a dot for
  175.         about every 10 directories examined or (in /v mode) prints the
  176.         directory and file names.  If it stops printing for more than a
  177.         few seconds, something is probably wrong.  Try running again
  178.         with the /d debug log option, and if it stops again, please
  179.         email me (dmurdoch@mast.queensu.ca) a copy of your log, along
  180.         with a description of your system.  I'm very interested in
  181.         making DOSLFNBK as bug-free as possible.
  182.  
  183.         You'll get a warning if you run it in Windows mode, since other
  184.         programs might change the directories while DOSLFNBK is running
  185.         and cause it to store and/or restore garbage.
  186.  
  187.         The /force option tells DOSLFNBK to go ahead without stopping
  188.         for this warning, or several others (e.g. overwriting the backup
  189.         file).  Use it in a batch file only when you're sure you always
  190.         want it to go ahead.
  191.  
  192.         The /s option tells DOSLFNBK to skip the back up or restore of a
  193.         particular directory.  This is meant as a workaround for the
  194.         memory limitations in DOSLFNBK that are described in section 4
  195.         below.  You can use /s as often as necessary to skip multiple
  196.         directories--the only limit is the command line length.  Note
  197.         that the directory name must be specified using the short
  198.         aliases, e.g. "\PROGRA~1" instead of "\Program files".  Relative
  199.         directory paths using "." and ".." are not supported.
  200.  
  201.         When restoring a directory, DOSLFNBK takes a very conservative
  202.         and careful approach so that it is very likely that you can
  203.         recover from a disaster like a power failure in mid-restore.
  204.         Unfortunately, the method I chose to do this is very slow at
  205.         increasing the size of a directory.  On a large directory, it
  206.         make take several minutes of apparent disk thrashing to get the
  207.         directory up to the required size, and you may think DOSLFNBK
  208.         has crashed, and so reboot your system.  A sign that things were
  209.         really working is that it will have left behind a large number
  210.         of 0 length files with names like 00000123.$$$. If this happens,
  211.         delete those files and try again, or use the /S option to skip
  212.         that directory.  The next version of DOSLFNBK will use a much
  213.         more efficient method of growing the directory.
  214.  
  215.         During a restore in Win95 MSDOS mode, you should use the DOS
  216.         command LOCK to give DOSLFNBK access to the disk at a low level.
  217.         LOCK is a new built-in MSDOS 7.0 command.  In earlier versions
  218.         of DOS, there is no LOCK.  LOCK will work in a DOS window only
  219.         on a drive with no open files; this means it is impossible to do
  220.         a restore to the drive where Windows files are stored while
  221.         Windows is running.  However, it should be possible and safe to
  222.         restore to other drives if you can successfully LOCK them.
  223.         After DOSLFNBK is done, run UNLOCK to release the drive so that
  224.         other programs can use it.
  225.  
  226.         You may be tempted to use an older DOS-based disk defragger or
  227.         directory sort utility that doesn't understand long filenames,
  228.         and then use DOSLFNBK to restore the long filenames.  DON'T DO
  229.         THIS! It is extremely likely to cause errors to your directory
  230.         structure which can't be repaired except by hours and hours of
  231.         work.  The problem is that these programs usually leave a few
  232.         files with wrong but apparently correct long filenames.  You'll
  233.         find that 99 percent of your disk is restored, but some small
  234.         number of files are not.  It is extremely difficult and time
  235.         consuming to find and repair these files.  If you want to use
  236.         these DOS-based programs, you should remove all long filenames
  237.         first (e.g. using LFNBK, or by restoring from tape in DOS).  A
  238.         better solution is to use Win95 compatible versions of these
  239.         utilities.  (Win95 comes with a defragger, and there are shareware
  240.         directory sort utilities available, including mine,
  241.         available as ftp://garbo.uwasa.fi/pc/dirutil/lfnsrt10.zip.)
  242.  
  243.         I have received several messages from people who have tried to
  244.         use XCOPY and DOSLFNBK to back up their disk to a network drive
  245.         or elsewhere, and then found on restore that Win95 won't boot
  246.         properly.  I don't know what is going wrong in these situations,
  247.         but as far as I can tell it's either a bug in XCOPY, or people
  248.         aren't using the right combination of options when they run it.
  249.         If someone has the time to figure out exactly what is going
  250.         wrong, I'd appreciate being told.  In the meantime I don't
  251.         recommend using XCOPY for backups.
  252.  
  253.         When a run is successful, DOSLFNBK exits with ERRORLEVEL 0.
  254.         When something goes wrong, it prints an error message and exits
  255.         with a higher errorlevel. The currently defined error levels
  256.         are:
  257.  
  258.          99 = Syntax error
  259.          98 = Error initializing disk
  260.          97 = Error reading disk
  261.          96 = Error writing disk
  262.          95 = Error in directory on disk
  263.          94 = Error setting up directory
  264.          93 = Error opening backup
  265.          92 = Error reading backup
  266.          91 = Error writing backup
  267.          90 = Error closing backup
  268.          89 = Memory error
  269.          88 = Multitasker running
  270.          87 = Backup file exists
  271.          86 = Debug log problem
  272.  
  273. 4. Memory Limitations:
  274.  
  275.         When running, DOSLFNBK keeps copies of several directories in
  276.         memory at once.  It is written as a real mode DOS program and
  277.         keeps all of this data in the low 640K of memory.  This means
  278.         that in a typical DOS session with 500K of memory available,
  279.         DOSLFNBK will run out of memory when about 15,000 directory
  280.         entries are in memory.  On a restore, up to 3 copies of each
  281.         directory entry may be in memory at once, limiting DOSLFNBK to
  282.         disks with fewer than 5000 directory entries in any branch of
  283.         the directory tree.  (The total number of files on the disk
  284.         doesn't matter; what matters is the number of entries in a
  285.         directory, its parent, grandparent etc., back to the root.)
  286.  
  287.         When I wrote DOSLFNBK, I thought disks approaching this limit
  288.         were very unusual. However, it *is* possible to have such a disk,
  289.         and here's how to find out if you do:
  290.  
  291.         Run your backup with the /V verbose option.  At the end, it
  292.         will print a message something like
  293.  
  294.            Used 255K; restore will require about 264K in DOS session.
  295.  
  296.         If the amount of memory estimated for the restore is more than
  297.         you have available (as reported by the DOS MEM command), you
  298.         might have problems.  You might not; the number reported is
  299.         usually an overestimate.
  300.  
  301.         If it ever turns out that you do run out of memory during a
  302.         restore, you can still restore the LFNs by breaking up the
  303.         restore operation into several steps, restoring different parts
  304.         of your subdirectory tree separately.  In the worst case (more
  305.         than 5000 entries in a single subdirectory), you may have to
  306.         temporarily move files out of the directory and restore the LFNs
  307.         a few thousand (!!) at a time.
  308.  
  309.         Since the original release, it has become clear that there are
  310.         some common situations leading to very large directories. The
  311.         Microsoft Plus! package includes one, and WWW browsers often
  312.         create them while maintaining caches or history lists.
  313.         Unfortunately, the current version of DOSLFNBK doesn't handle
  314.         these very well; in some cases it will crash.  I have added the
  315.         /s option to allow you to skip particular directories during the
  316.         backup or restore operation.  A better solution that allows all
  317.         directories to be backed up is in the works; it may be available
  318.         by June, 1996.
  319.  
  320. 5. Safety:
  321.  
  322.         DOSLFNBK works with your disk at a level below the file system,
  323.         so if things go wrong during an LFN restore, it's conceivable
  324.         that you could lose whole files or directories.  I've tried to
  325.         make it as safe as I can, but you should follow some simple
  326.         precautions:
  327.  
  328.           - If you aren't sure of the integrity of your file system, run
  329.           Scandisk before DOSLFNBK and get it to fix any errors.  In
  330.           particular, if you've run other low level software (e.g. a
  331.           defragger or a directory sorter) that may have messed up the
  332.           LFNs, run Scandisk first.  Better still:  don't use that old
  333.           defragger/directory sorter, because Scandisk may not be able
  334.           to repair all the damage it does.
  335.  
  336.           - If you choose to run in Windows despite the warning about
  337.           the multitasker, then definitely don't make changes to files
  338.           in the directories where DOSLFNBK is currently restoring LFNs.
  339.           You're *very* likely to lose your new work.
  340.  
  341.           - Don't turn off or reboot your PC in the middle of a DOSLFNBK
  342.           run.  If there's a power failure or (horrors!) a bug in
  343.           DOSLFNBK forces you to reboot, then Scandisk should be able to
  344.           repair much of the damage.  You may lose some filenames, but
  345.           Scandisk should be able to recover the files themselves.
  346.  
  347.           - If you hit Ctrl-Break or Ctrl-C during a DOSLFNBK restore,
  348.           it shouldn't do any damage other than giving you only a
  349.           partial restore of your LFNs --- but this is *not* a
  350.           well-tested feature, and there may be conditions under which
  351.           you'll suffer worse damage.  Again, Scandisk should be able to
  352.           repair most of it.
  353.  
  354.           - DOSLFNBK was written for version 4.00.950 of Windows 95 (the
  355.           August 1995 release).  It hasn't been tested on the earlier
  356.           beta test versions, or any versions later than the January 96
  357.           fix pack (version 4.00.950a). If the VFAT file structure isn't
  358.           what DOSLFNBK is written for, it could do some real damage.
  359.  
  360.           - This is the second release of DOSLFNBK to the public.  There
  361.           may still be special conditions on your system that it doesn't
  362.           handle.  If you can, try it out when you've got a good second
  363.           backup to make sure it works.  If it doesn't, *please* send me
  364.           details, and I'll attempt to fix it.
  365.  
  366. 6. Recovery from total disk failure:
  367.  
  368.         If your boot disk fails, or you decide to repartition it, then
  369.         you may need to do a full restore from a backup tape.
  370.         Unfortunately, the Win95 backup program provides *no way* to do
  371.         this without re-installing Win95 from the original disks or CD
  372.         ROM.  From reports I've heard, the same is true of the
  373.         just-released Win95 version of Colorado Memory System's backup
  374.         program and some other commercial backup programs.
  375.  
  376.         However, if you have a reliable DOS-based backup program,
  377.         DOSLFNBK will let you do a complete restore from a backup.  I've
  378.         only had to do this once, so these instructions aren't
  379.         guaranteed to cover everything for every system, but they worked
  380.         on mine.
  381.  
  382.         ADVANCE PREPARATIONS:
  383.  
  384.         Before your disk fails (i.e. right now! :-), you need to prepare
  385.         the following:
  386.  
  387.           1. A Win95 startup disk.  If you didn't create one when you
  388.           installed Win95, start the Add/Remove Programs option in
  389.           Control Panel, and click the Startup Disk tab. Then click the
  390.           Create Disk button, and follow the instructions on-screen.
  391.  
  392.           2. A copy of your DOS-based backup/restore program on a floppy
  393.           disk.  It may require EMS memory; if so, you should put
  394.           HIMEM.SYS and EMM386.EXE on your startup disk, and load them
  395.           via CONFIG.SYS.
  396.  
  397.           3. If you use Drivespace disk compression, then you should also
  398.           make sure that the MINI.CAB file from the installation disks
  399.           or the CD ROM is in your Windows directory on the hard disk.
  400.  
  401.           4. A full backup of your disk(s).  Just before creating this,
  402.           run DOSLFNBK to save all of your long filenames.  You'll need
  403.           to create one backup file for each disk.  It's fine to leave
  404.           this on the hard disk so that it ends up on the backup; you
  405.           don't need to have it on floppy disk.
  406.  
  407.         WHEN YOUR DISK FAILS:
  408.  
  409.         Depending on the reason for your disk failure, you may be able
  410.         to skip some of the early steps here.  Read them over, and
  411.         figure out where to start.  If you have to, you can start again,
  412.         so the only thing you lose by starting too far down is time.
  413.  
  414.           1. Make any necessary repairs to your hardware.
  415.  
  416.           2. Boot from your Startup disk, and use FDISK to partition
  417.           your disk.  Use "FORMAT c: /s" to reformat the disk and
  418.           transfer the system files to it.
  419.  
  420.           3. (Optional) Transfer your tape backup software to your hard
  421.           disk.
  422.  
  423.           4. If you're not planning to use Drivespace, you can skip down
  424.           to step 8.
  425.  
  426.           5. If you want to compress your drive, you need to restore
  427.           enough of Win95 to run Drivespace.  Don't restore the whole
  428.           disk; you might not have room for it.  For most people,
  429.           restoring the files in the root directory and the files in the
  430.           Windows directory should be enough.  If you have any essential
  431.           drivers in other directories, you'll need to restore them too.
  432.           Finally, you should restore DOSLFNBK and the data file(s)
  433.           containing the backed up long filenames.
  434.  
  435.           IMPORTANT:  You should not overwrite IO.SYS, but you *should*
  436.           overwrite MSDOS.SYS.  It is a hidden read-only file in your
  437.           root directory.  A good way is to erase MSDOS.SYS before
  438.           starting the restore (use ATTRIB from the Startup disk to
  439.           remove the System, Hidden, Read-only attributes), and then
  440.           telling your restore program not to overwrite existing files.
  441.  
  442.           Restore all those files now.
  443.  
  444.           6. Restore the long filenames by running
  445.  
  446.              LOCK C:
  447.              DOSLFNBK c:\ /R /V /F backupfilename
  448.  
  449.           The LOCK command is only necessary when using the Win95
  450.           startup disk.  Don't use it when running under earlier
  451.           versions of DOS.
  452.  
  453.           7. Remove the Startup disk, and reboot your system.  You may
  454.           get some errors about missing drivers (e.g. no sound card
  455.           drivers), but things should basically work.  Run DriveSpace to
  456.           compress your drives the way you want.
  457.  
  458.           8. Reboot your system in DOS mode or from the Startup disk.
  459.  
  460.           9. Restore all rest of the files on all of your disks from the
  461.           backup now.  See the "IMPORTANT" note in step 5 about
  462.           MSDOS.SYS and IO.SYS.
  463.  
  464.           10. Restore all the rest of your long filenames by running
  465.  
  466.              LOCK C:
  467.              DOSLFNBK c:\ /R /V /F backupfilename
  468.  
  469.           and if you've also got a D: partition,
  470.  
  471.              LOCK D:
  472.              DOSLFNBK d:\ /R /V /F backupfilename
  473.  
  474.           You may get messages about some long filenames already
  475.           existing from your first restore; don't worry about those.
  476.  
  477.           11. Some restore programs set the archive bit on all restored
  478.           files; you might want to turn it off (since you've still got
  479.           those files backed up) at this point.
  480.  
  481.         Reboot your system, and things should be back as they were when
  482.         you did your backup!
  483.  
  484. 7. License:
  485.  
  486.         DOSLFNBK is *not* public domain software, but you may use it at
  487.         no charge.  You may distribute unmodified copies of the complete
  488.         DOSLFNBK package, provided your total charge is no more than $1.
  489.         The total cost of a compilation (e.g. a CD ROM) including
  490.         DOSLFNBK must be no more than $1 per package in the compilation.
  491.  
  492.         DOSLFNBK was written in Borland Pascal 7.01, using the excellent
  493.         Object Professional library from TurboPower Software.  You can
  494.         obtain the source code (including an object-oriented low-level
  495.         disk access unit and a huge memory support unit, but not Opro)
  496.         by sending a cheque or money order for $50 (in Canadian or US
  497.         dollars, or the UKP equivalent of $50US) to:
  498.  
  499.          Duncan Murdoch
  500.          337 Willingdon Ave.
  501.          Kingston, Ontario, Canada.
  502.          K7L 4J3
  503.  
  504.         You can also order source code from the Public (software) Library
  505.         (PsL) using MC, Visa, AmEx, or Discover card:
  506.          - by calling 800-242-4775 (US only)
  507.          - by calling 713-524-6394
  508.          - by faxing your order to 713-524-6398
  509.          - by sending your order by Compuserve to 71355,470.
  510.          - by sending your order by Internet to 71355.470@compuserve.com
  511.         PsL only accepts payment in US dollars.  Please give PsL your
  512.         name exactly as it appears on the card, and tell them your
  513.         card's expiry date.  DOSLFNBK is PsL product #14247.
  514.  
  515.         The PsL numbers are for ordering only.  I *cannot* be reached at
  516.         the PsL numbers.  To contact me for information about dealer
  517.         pricing, volume discounts, site licensing, the status of
  518.         shipment of the product, the latest version number or for
  519.         technical information write to me at the address above or at
  520.         the email address below.  I'd especially like to hear bug
  521.         reports and suggestions for improvements.
  522.  
  523.          Internet:   dmurdoch@mast.queensu.ca
  524.  
  525. 8. Release history:
  526.  
  527.        0.0 - first beta test version
  528.        0.1 - kept file attributes of existing file during restore.
  529.        0.2 - made messages more informative; fixed bug in handling
  530.              erased file entries; added check of overwrite of backup
  531.              file; changed default name of backup file to BACKUP.LFN and
  532.              made LFN the default backup extension; added /P option.
  533.        0.3 - fixed memory leak that caused run-time error 203 on large
  534.              restore
  535.        0.4 - added check for successful write of backup file, added
  536.              /force option.
  537.        0.5 - added report of memory use, /d option, many debugging messages
  538.        0.6 - cleaned up messages and debug log, removed disk size
  539.              restriction, added progress dots for non-verbose runs.
  540.        1.0 - first public release --- same as 0.6
  541.        1.1 - unauthorized release
  542.        1.2 - documentation changes and addition of /s option
  543.  
  544. 9. Acknowledgments
  545.  
  546.         DOSLFNBK was written based on the information in Robert Hummel's
  547.         article on Win95 long filenames in the June/July 1995 issue of
  548.         PC Techniques Magazine.  Thanks are due to the beta testers, who
  549.         suggested many improvements, and several of whom were put to
  550.         considerable inconvenience by early versions that messed up
  551.         their disks.  M. Guffey made a lot of useful suggestions for
  552.         improvements to the documentation.
  553.